package com.gxa.pingan.mapper;

import com.gxa.pingan.pojo.Banner;

import java.util.List;

/**
 * @Author ChenJin
 * @date 2021/10/25 14:48
 * Description:
 **/
public interface BannerMapper {

    /**
     * 添加轮播图
     * @param banner 轮播图对象
     */
    void addBanner(Banner banner);

    /**
     * 删除轮播图
     * @param id 轮播图id
     */
    void deleteBanner(Long id);

    /**
     * 根据id查找banner轮播图
     * @param id
     * @return
     */
    Banner selectBanner(Long id);

    /**
     * 获取轮播图列表
     * @param offset 偏移量
     * @param size 每页大小
     * @return
     */
    List<Banner> getListByPage(Integer offset, Integer size);

    /**
     * 获取全轮播图，用list的大小获取总数
     * @return
     */
    List<Banner> getList();

    /**
     * 修改轮播图信息.
     * @param banner 轮播图对象
     */
    void update(Banner banner);

    /**
     * 排序移动操作（用于删除轮播图时移动其他轮播图）
     * @param rank
     */
    void move(Integer rank);

    /**
     * 根据rank排序序号查询轮播图
     * @param rank 排序序号
     * @return
     */
    Banner selectByRank(Integer rank);


}
